The present invention relates to a cloud computing environment, and, in particular, to provisioning of infrastructure resources.
A recent model, known as cloud computing, enables convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. “Rapid elasticity,” an essential characteristic of the cloud model, refers to rapidly and elastically provisioning computing capabilities to quickly scale out, and quickly scale in by rapidly releasing the computing capabilities. The provisioning of computing resources for different application services and models under transient conditions, on the cloud infrastructure inclusive of hardware, software and services is a challenging problem to tackle. This is because clouds exhibit varying demands, supply patterns, system sizes, and resources (hardware, software, network). Users have heterogeneous, dynamic, and competing Quality of Service (QoS) requirements, and applications have varying performance, workload, and dynamic application scaling requirements.